package ejb.casacentral.service;

import java.util.ArrayList;
import java.util.Date;
import java.util.List;

import javax.ejb.Stateless;
import javax.persistence.EntityManager;
import javax.persistence.PersistenceContext;

import comun.casacentral.proxy.ofiventa.cotizar.TestProxyCotizar;
import comun.casacentral.proxy.ofiventa.rodamientonuevo.TestProxyRodamientoNuevo;
import comun.casacentral.proxy.proveedor.ordencomprarecivida.TestProxyOrdenCompraAcep;

import ejb.casacentral.log.CasaLogger;
import ejb.casacentral.persistence.entity.ItemRodamiento;
import ejb.casacentral.persistence.entity.OficinaVenta;
import ejb.casacentral.persistence.entity.Proveedor;
import ejb.casacentral.persistence.entity.Rodamiento;
import ejb.casacentral.persistence.entity.SolicitudCompra;

@Stateless
public class TestSistemaBean implements TestSistema {
	
	@PersistenceContext(unitName="casacentral")
	private EntityManager em;
	
	@Override
	public String createOrdenCompraAceptadaXML() {
		
		return TestProxyOrdenCompraAcep.createOrdenCompraAceptadaXML();
		
	}
	
	@Override
	public String generarRodamientoNuevoXML() {

		return TestProxyRodamientoNuevo.createListadoRodXML();
	
	}
	
	@Override
	public String generarSolicitudCompraXML() {

		return null;//TestProxySolicitudCompra.createSolicitudRodXML();
		
	}
	
	@Override
	public String generarListadoACotizarXML() {
		
		return TestProxyCotizar.createListadoRodXML();
		
	}

	@Override
	public String generarListadoXML() {
		
//		return TestProxyListadoPrecio.createListadoRodXML();
		return null;
		
	}
	
	@Override
	public void inicializarDatosParaTest(){
		CasaLogger.log("LogExecution : "+this.getClass().getName());
		SolicitudCompra sol = new SolicitudCompra();
		sol.setCodigo(10);
		sol.setEstado("completa");
		sol.setFechaRecepcion(new Date());
		
		OficinaVenta ofi = new OficinaVenta();
		ofi.setCodigoPostal("1427");
		ofi.setDireccion("Rivadavia 6615");
		ofi.setSucursal("25");
		
		sol.setOficinaVenta(ofi);
		
		List<ItemRodamiento> rodamientos = new ArrayList<ItemRodamiento>();
		
		Rodamiento rod1 = new Rodamiento();
		
		rod1.setCaracteristica("templado");
		rod1.setCodigo("221122");
		rod1.setDescripcion("tornillo");
		rod1.setMarca("JFK");
		rod1.setOrigen("Finlandia");
		
		Proveedor prov = new Proveedor();
		prov.setCodigoPostal("1102");
		prov.setCuil("02");
		prov.setDireccion("Lima 777");
		prov.setRazonSocial("Martin Morfeta");
	
		rod1.setProveedor(prov);
		
		ItemRodamiento item1 = new ItemRodamiento();
		
		item1.setCantidad(10);
		item1.setRodamiento(rod1);
		
		rodamientos.add(item1);
		
		sol.setRodamientos(rodamientos);
		
		
		CasaLogger.log(" persistiendo entidad .... "); em.merge(sol);
		em.flush();
		
		Proveedor proveedor = new Proveedor();
		proveedor.setCuil("20-12345678-4");
		proveedor.setRazonSocial("Rodameindos Don Emilio");
		proveedor.setCodigoPostal("5555");
		proveedor.setDireccion("Ruta 197 y Panamericana");
		 
		Rodamiento rod3 = new Rodamiento();
		rod3.setCodigo("1133");
		rod3.setCaracteristica("tornillo");
		rod3.setProveedor(proveedor);
		rod3.setMarca("jfk");
		rod3.setOrigen("tailandia");
		
		CasaLogger.log(" persistiendo entidad .... "); em.merge(rod3);
		em.flush();
		
		Rodamiento rod2 = new Rodamiento();
		
		rod2.setCodigo("22222");
		rod2.setCaracteristica("tuerca");
		rod2.setMarca("fei");
		rod2.setOrigen("japon");
		rod2.setProveedor(proveedor);
		
		CasaLogger.log(" persistiendo entidad .... "); em.merge(rod2);
		em.flush();
		
	}
	
	
	
	

}
